home *** CD-ROM | disk | FTP | other *** search
/ Aminet 5 / Aminet 5 - March 1995.iso / Aminet / game / demo / GDS_MISC.lha / misc / ra.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-02-11  |  1.1 KB  |  42 lines

  1. /* Random Analysis program.  Test random function for good spread. */
  2.  
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5.  
  6. #include "GameSmith:GameSmith.h"
  7. #include "GameSmith:include/libraries/libptrs.h"
  8. #include "GameSmith:include/proto/all_regargs.h"
  9.  
  10. #define ITERATIONS    1000000    /* get 1 million random numbers */
  11.  
  12. main(argc,argv)
  13. int argc;
  14. char *argv[];
  15.  
  16. {
  17.     unsigned long cnt,*sample;
  18.     unsigned short sample_size,num;
  19.  
  20.     if (argc < 2)
  21.         {
  22.         printf("\nUSAGE: ra [number range]\n");
  23.         exit(01);
  24.         }
  25.     sample_size=atoi(argv[1]);
  26.     printf("\nSample Range: 0 to %d\n",sample_size-1);
  27.     if (!(sample=malloc(sample_size*sizeof(long))))
  28.         printf("\ninsufficient memory for sample array\n");
  29.     for (cnt=0; cnt < sample_size; cnt++)
  30.         sample[cnt]=0;            /* clear sample count */
  31.     for (cnt=0; cnt < ITERATIONS; cnt++)
  32.         {
  33.         num=_gs_random(sample_size);        /* get random # in specified range */
  34.         sample[num]++;            /* increment count for that number */
  35.         }
  36.     printf("\nCount of Random Number Values:");
  37.     for (cnt=0; cnt < sample_size; cnt++)
  38.         printf("\n%d\t=%d",cnt,sample[cnt]);
  39.     printf("\n");
  40.     free(sample);
  41. }
  42.